Configuration management database (cmdb) which establishes policy artifacts and automatic tagging of the same

ABSTRACT

The present invention discloses a solution for managing policy artifacts using a configuration management database (CMDB). Policies can be associated with a number of information technology resources, such as servers, businesses applications and the like. The solution permits automatic tagging of the policies (auto-discovery) as they enter the CMDB. For example, when a policy is added, it can be compared against a set of tagging rules. Multiple rules can match a new policy, which results in multiple tags being added for the policy. The policy specific tags can be optionally indexed for faster searching. Once indexed, the CMDB can support policy and policy tag based queries. In one embodiment, policy artifacts can be manipulated within a CMDB tool in a manner consistent with how the CMDB tool handles configuration items (CIs).

BACKGROUND

1. Field of the Invention

The present invention relates to the field of configuration management database (CMDB) and more particularly, to establishing policy artifacts and automatic tagging of the same.

2. Description of the Related Art

In order to ensure the security and availability of network resources, businesses employ a variety of usage policies. Usage policies exist at various granularities to control the functioning of network resources. The usage policy “only software developers can log onto development servers” is an example of a high-level usage policy, whereas “available memory space on development servers must be a minimum of 64 MB” is a low-level usage policy. Such policies are often defined, enforced, and stored by independent systems across a business network.

The lack of a central repository impedes access to information regarding policies and their relationships to network resources. For example, determining all the policies that affect a single server is a labor-intensive task that must by performed manually. Further, policies are often either anonymous or inflexibly categorized in regards to their applicability. That is, generating a list of policies that pertain to network availability requires examining all policies because the policies either do not have categories or the categorization schema does not allow for a policy to belong to more than one category. For example, the policy “CPU utilization of production servers should not exceed 60%” can be considered both a performance and an availability policy.

Configuration management databases (CMDBs) are often used by large companies to track physical and virtual network resources, such as computers, printers, and network connections. The CMDB records configuration items (CIs) and details about the important attributes and relationships between CIs. A key success factor in implementing a CMDB is the ability to automatically discover information about the CIs (auto-discovery) and track changes as they happen. Conventional implementations of CMDBs do not include policies among the resource items for tracking.

SUMMARY OF THE INVENTION

The present invention discloses a configuration management database (CMDB) that handles policies associated with information technology resources. Policies can be associated with a number of resources, such as servers, businesses applications and the like. The solution permits automatic tagging of the policies (auto-discovery) as they enter the CMDB. For example, when a policy is added, it can be compared against a set of tagging rules. Multiple rules can match a new policy, which results in multiple tags being added for the policy. The policy specific tags can be optionally indexed for faster searching. Once indexed, the CMDB can support policy and policy tag based queries. Policy artifacts can be manipulated within a CMDB tool in a manner consistent with manipulating configuration items (CIs) of the CMDB.

The present invention can be implemented in accordance with numerous aspects consistent with the material presented herein. For example, one aspect of the present invention can include a CMDB system that includes one or more CIs. Each CI can be a data structures that represents an information technology resource (e.g., a server, router, database, work unit, etc.) that is placed under configuration management. The CMDB system can include policy artifacts associated with a policy related to an information technology resource. Multiple policy tags can be related to the policy artifacts. The policy tags can include searchable keywords linked to the related policy artifact.

Another aspect of the present invention can include a method for automatically categorizing a usage policy in a CMDB. The method can include a step of acquiring a policy artifact. The policy artifact can define a policy related parameter for one or more resource items contained within a CMDB. The acquired policy artifact can be compared to at least one tagging rule. The rule can specify a set of programmatic instructions for categorizing policy artifacts. When the result of the comparing step indicates that the tagging rule is applicable, policy tags can be created using the applicable tagging rule. The created policy tags can be used when searching for the policy artifact.

Still another aspect of the present invention can include a software program stored in a machine readable medium that includes a data repository of information related to all components of an enterprise information system. The data repository can record configuration items and details about important attributes and relationships between configuration items. The data repository can also include one or more policy artifacts for policies associated with information technology resources.

It should be noted that various aspects of the invention can be implemented as a program for controlling computing equipment to implement the functions described herein, or as a program for enabling computing equipment to perform processes corresponding to the steps disclosed herein. This program may be provided by storing the program in a magnetic disk, an optical disk, a semiconductor memory, or any other recording medium. The program can also be provided as a digitally encoded signal conveyed via a carrier wave. The described program can be a single program or can be implemented as multiple subprograms, each of which interact within a single computing device or interact in a distributed fashion across a network space.

It should also be noted that the methods detailed herein can also be methods performed at least in part by a service agent and/or a machine manipulated by a service agent in response to a service request.

BRIEF DESCRIPTION OF THE DRAWINGS

There are shown in the drawings, embodiments which are presently preferred, it being understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown.

FIG. 1 is a schematic diagram illustrating a system for a configuration management database (CMDB) having configuration items (CIs) and policy artifacts in accordance with an embodiment of the inventive arrangements disclosed herein.

FIG. 2 shows a sample CMDB interface for a CMDB that includes policy artifacts in accordance with an embodiment of the inventive arrangements disclosed herein.

FIG. 3 is a flow chart of a method describing the automatic categorization of a policy artifact in accordance with an embodiment of the inventive arrangements disclosed herein.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 is a schematic diagram illustrating a system 100 for a configuration management database (CMDB) having configuration items (CIs) 125 and policy artifacts 123 in accordance with an embodiment of the inventive arrangements disclosed herein. A policy associated with a policy artifact 123 can include usage policies, security policies, access policies, development policies, implementation policies, training policies, and the like. System 100 represents only those components that are particularly relevant to the present invention. That is, additional network components may exist in addition to those shown in FIG. 1 without detracting from the functionality of the present invention.

In system 100, information technology resources 105 of an Information Technology (IT) environment 105 can be connected to a configuration management server 115 via network 110. Information concerning each of the IT resources 107 or a set of resources 107 can be maintained by the configuration management server 115 and stored in a CMDB 120. An IT resource 107 can represent server, storage devices, communication devices, networks, middleware, software applications, firmware, data, and the like. An administration console 140 can permit authorized administrators to interact with the configuration management server 115 using interface 142. The CMDB 120 can include configuration items (CIs) 125, which are data structures representing IT resources that are placed under configuration management. The CMDB 120 can also include policy artifacts 123 that specify policies of one or more IT resources 107. The CMDB 120 can be a cross-product solution that allows a user of interface 142 to view and manage details of the IT resources 107 of IT environment 105, which includes policies. Any type of policy can be managed, which includes security policies, file access policies, IT administration policies, software development policies, policies relating to handling different states of the IT environment (e.g., a high availability policy, a medium availability policy, etc), and the like.

The configuration management server 115 can include an auto-discovery engine 117, which analyzes IT resources 107 of the IT environment. The auto-discovery engine 117 can detect changes to resources and can automatically adjust CIs 125 and policy artifacts 123 to properly reflect the detected changes. System 100 can automatically create policy tags 135, which are keyword associations and/or searchable structures linked to a policy. A searchable set of policies applicable for a situation can be determined queried using the policy tags 135. When a policy artifact 123 is added/detected, the policy artifact 123 can be compared against a set of tagging rules 130. Multiple rules 130 can match a single policy artifact 123, which results in multiple policy tags 135 being added to the CMDB 120. In one embodiment, interface 142 can be used to manually modify/establish policy tags 135 and/or the tagging rules 130.

As used in system 100, a configuration management server 115 can be a server within which information is standardized, centrally managed, and shared among many different users. The server 115 can be used to discover and federate IT information spread across an enterprise (environment 105), which includes details about servers, storage devices, networks, middleware, applications, and data, which are all considered IT resources 107. The server 115 provides a set of automated, preconfigured, and customizable process workflows for change and configuration management processes. The server 115 can permit users via interface 142 to leverage the federated information to easily access key information about CIs 125 and policy artifacts 123 as well as their relationships, and to see all pending change and release schedules for CIs 125 and policy artifacts 123. As a result, the server 125 helps minimize business disruptions when implementing upgrades and other changes to the IT environment. The server 115 facilitates a systematic proposal, justification, evaluation, coordination, approval/disapproval of proposed changes, and the implementation of approved changes in the configuration of a CI 125 after a configuration baseline has been established for the CI 125. Conventional CMDB 120 and server 115 solutions include, but are not limited to, IBM TIVOLI Change and Configuration Management Database, CA CMDB Product Solution, HP Universal CMDB, ALTIRIS CMDB, CONFIGURESOFT federated CMDB, ORACLE Enterprise Manager Configuration Management Pack and CMDB, ZENOSS, NETDIRECTOR, PROCESS WORX CMDB, and the like.

The CI 125 is a data structure representing an aggregation of hardware and/or software that is designated for configuration management. CI's 125 can include requirements, code, documents, models, hardware, hardware components, and other units. Configuration management server 115 oversees a life of the CIs 125 through a combination of processes and tools to avoid an introduction of errors relating to improper testing or incompatibilities with other CIs 125. CIs 125 are usually described using configurable attributes, grouped as technical attributes, ownership attributes, and relationship attributes.

A policy artifact 123 can be a data structure that includes a description of a policy that applies to an IT resource, a group of IT resources, and/or an IT process or that describes a policy that is related to one or more IT artifacts in a programmatically definable manner. A policy attribute can be one of a set of attributes/objects associated with a single policy artifact 123.

As used herein, presented data stores, including CMDB store 120, can be a physical or virtual storage space configured to store digital information. Data store 120 can be physically implemented within any type of hardware including, but not limited to, a magnetic disk, an optical disk, a semiconductor memory, a digitally encoded plastic memory, a holographic memory, or any other recording medium. Data store 120 can be a stand-alone storage unit as well as a storage unit formed from a plurality of physical devices. Additionally, information can be stored within data store 120 in a variety of manners. For example, information can be stored within a database structure or can be stored within one or more files of a file storage system, where each file may or may not be indexed for information searching purposes. Further, data store 120 can utilize one or more encryption mechanisms to protect stored information from unauthorized access.

Network 110 can include any hardware/software/and firmware necessary to convey data encoded within carrier waves. Data can be contained within analog or digital signals and conveyed though data or voice channels. Network 110 can include local components and data pathways necessary for communications to be exchanged among computing device components and between integrated device components and peripheral devices. Network 110 can also include network equipment, such as routers, data lines, hubs, and intermediary servers which together form a data network, such as the Internet. Network 110 can also include circuit-based communication components and mobile communication components, such as telephony switches, modems, cellular communication towers, and the like. Network 110 can include line based and/or wireless communication pathways.

FIG. 2 shows a sample CMDB interface 200 for a CMDB that includes policy artifacts in accordance with an embodiment of the inventive arrangements disclosed herein. The interface 200 can be one example of interface 142 of system 100, which can be an interface to any CMDB solution, such as an IBM TIVOLI based solution.

As shown, the GUI 200 provides a graphical representation of at least a portion of a configuration managed IT environment 210. An equivalent non-graphical presentation 220 of IT resources can also be included in interface 200. One or more of the presented resources can be selected 212, which results in configuration managed information 230 can be presented. This information 230 can include policy information, which is managed by the CMDB. The interface 200 can also include a search 240 element, which permits a user to enter criteria, which results in CIs, policy artifacts, or other CMDB managed objects that match the criteria. Input to element 240 can be compared against a set of tags (e.g., tags 135) or keywords that are associated with the managed policy artifacts and/or CIs.

It should be appreciated that the graphical user interface (GUI), GUI elements, and graphical artifacts presented herein are for illustrative purposes only and are not meant to limit the invention in any regard.

FIG. 3 is a flow chart of a method 300 describing the automatic categorization of a policy artifact in accordance with an embodiment of the inventive arrangements disclosed herein. Method 300 can be performed in the context of system 100 or any other CMDB system that manages policy artifacts.

Method 300 can begin with step 305 where a policy artifact can be acquired. Acquisition of the policy artifact can be achieved through an automatic process, such as an auto-discovery function of the CMDB or by manual input.

Once the CMDB acquires the policy artifact, step 310 can execute in which the policy artifact can be compared to a policy template, which establishes a set of tagging rules. The applicability of the tagging rules can be determined in step 315. When a tagging rule is found to be applicable to the policy artifact, step 320 can execute where policy tags can be generated based upon the applicable rules. A CMDB entry can be added that associates the generated policy tags with the policy artifact. Either upon the completion of step 320 or the tagging rule is found to not apply to the policy artifact, the existence of additional tagging rules can be ascertained in step 325. The presence of additional policy rules can return flow to step 310. When additional policy rules do not exist, step 330 can execute in which the policy artifact and associated policy tags can be stored in the CMDB.

The present invention may be realized in hardware, software, or a combination of hardware and software. The present invention may be realized in a centralized fashion in one computer system or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.

The present invention also may be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.

This invention may be embodied in other forms without departing from the spirit or essential attributes thereof. Accordingly, reference should be made to the following claims, rather than to the foregoing specification, as indicating the scope of the invention. 

1. A configuration management database (CMDB) system comprising: a plurality of configuration items (CIs), wherein each configuration item is a data structure representing an information technology resource that is placed under configuration management; a plurality of policy artifacts, wherein each policy artifact is associated with a policy related to an information technology resource; and a plurality of policy tags related to the policy artifacts, wherein said policy tags are indexed to a set of searchable keywords, which are able to be used when searching for related policy artifacts.
 2. The configuration management database system of claim 1, further comprising: a plurality of tagging rules, which are used by the configuration management database system to automatically select specific ones of the policy tags and to associate the selected policy tags to at least one of the policy artifacts.
 3. The configuration management database system of claim 2, wherein a plurality of tagging rules are applicable for at least one of the policy artifacts, which results in a plurality of policy tags, one for each of the tagging rules, being associated with the at least one policy artifact.
 4. The configuration management database system of claim 1, further comprising: an auto-discovery engine for automatically detecting changes to the information technology resources under configuration management and for automatically adjusting the configuration items and the policy artifacts in accordance with the detected changes.
 5. The configuration management database system of claim 4, wherein the configuration management database system is a cross-product solution that is configured to centrally manage all policies of an enterprise.
 6. The configuration management database system of claim 4, further comprising: an administration interface configured to permit a user to manually manipulate the configuration items, the policy artifacts, the policy tags, and the policy tags.
 7. A method for automatically categorizing a usage policy in a configuration management database comprising: acquiring a policy artifact, wherein the policy artifact defines a usage parameter for one or more resource items contained within a configuration management database; comparing the acquired policy artifact to at least one tagging rule, wherein the tagging rule specifies a set of programmatic instructions for categorizing policy artifacts; and when the result of the comparing step indicates that the tagging rule is applicable, associating the applicable policy tags with a related policy artifact using the applicable tagging rule, wherein the policy tags are able to be used when searching for the policy artifact.
 8. The method of claim 7, wherein the associating step further comprises: entering the policy tags into a designated attribute field of a database record of the configuration management database that corresponds to the policy artifact.
 9. The method of claim 7, further comprising: storing the policy artifact within a policy database table within the configuration management database, wherein storage within the configuration management database allows standard database functions to be performed upon and with the policy table, wherein standard database functions include, at a minimum, adding new records, modifying existing records, deleting existing records, creating relationships between records, and querying existing records.
 10. The method of claim 7, wherein the comparing and associating steps occur automatically in response to the acquiring step.
 11. The method of claim 7, wherein the comparing step is repeated for a plurality of policy templates, and wherein the associating step is likewise repeated upon the result of the comparing step.
 12. The method of claim 7, wherein the acquiring step occurs as the result of an automated process initiated by the configuration management database.
 13. The method of claim 7, wherein the acquiring step occurs as the result of a manual input of the policy artifact into the configuration management database.
 14. The method of claim 7, wherein said steps of claim 7 are performed by at least one machine in accordance with at least one computer program stored in a computer readable media, said computer programming having a plurality of code sections that are executable by the at least one machine.
 15. A software program stored in a machine readable medium comprising: a data repository of information related to all components of an enterprise information system, the data repository records configuration items and details about important attributes and relationships between configuration items, wherein the data repository also stores at least one policy artifact for policies associated with information technology resources.
 16. The software program of claim 15, further comprising: an auto-discovery engine configured to automatically detecting changes to the information technology resources under configuration management and for automatically adjusting the configuration items and the policy artifacts in accordance with the detected changes.
 17. The software program of claim 15, further comprising: a plurality of tagging rules related to policy artifacts, wherein said tagging rules are used to associate policy tags with policy artifacts, wherein the policy tags are associated with a set of keywords that are able to be used when searching for the policy artifacts.
 18. The software program of claim 17, wherein a single policy artifact is able to be related to at least two tagging rules, which generate at least two policy tags for the policy artifact.
 19. The software program of claim 15, wherein the information technology resources comprise servers, storage devices, networks, middleware, application, and data.
 20. The software program of claim 15, wherein the policy artifacts are acquired as a result of an automated process initiated by a configuration management program. 